#pragma once

#ifndef ASSET_H
#define ASSET_H

#include <iostream>

#include "Image.h"
#include "pre.h"

class Asset {
public:
	Asset() = delete;
	Asset(wchar_t tchar);
	Asset(Image&& img);
	friend std::wostream& operator<<(std::wostream& out, Asset asset);
	friend std::ostream& operator<<(std::ostream& out, Asset asset);
	wchar_t operator=(wchar_t tchar);
	Image operator=(Image img);
private:
	union _Asset {
		wchar_t* tchar;
		Image* image;
	} asset;
	bool isImage;
};
#endif // !ASSET_H
